Reduction and Abstraction Techniques for Model Checking
نویسندگان
چکیده
Model checking is an increasingly popular method for verification of safety-critical systems. The main obstacle of this verification method is a state space explosion problem and consequently high computational requirements of model checking algorithms. In order to make the model checking method practically feasible, it is necessary to develop powerful techniques for fighting state space explosion. This thesis is focuses on fighting state space explosion in the context of embedded system verification. Verification of embedded systems is particularly difficult due to intricate interferences of software and real-time aspects of these systems. In this setting, the most useful techniques are abstraction and reduction. These represent the main topics of this thesis. The thesis contributes in several ways to the development of abstraction and reduction techniques, which are both practical and theoretically grounded. Our first contribution is the systematic presentation of reduction and abstraction techniques in a single formal setting. This facilitates understanding and application of these techniques. Our main innovative contribution lies in the novel under-approximation refinement algorithm for software model checking. Similarly to other automatic refinement algorithms, our algorithm is based on predicate abstraction. However, it uses under-approximation refinement instead of the classical over-approximation refinement. The thesis also contains several important technical results about abstraction and reduction techniques. Particularly, we provide two interesting results for timed automata: a decidability result for a non-emptiness problem of timed automata with sampled semantics and a new extrapolation technique for zone based abstractions of timed automata.
منابع مشابه
Application of static analyses for state-space reduction to the microcontroller binary code
This article describes the application of two abstraction techniques, namely dead variable reduction and path reduction, to microcontroller binary code in order to tackle the state-explosion problem in model checking. These abstraction techniques are based on static analyses, which have to cope with the peculiarities of binary code such as hardware dependencies, interrupts, recursion, and globa...
متن کاملModel Checking Software Requirement Specifications using Domain Reduction Abstraction
As an automated verification and validation tool, model checking can be quite effective in practice, especially when it is used in the context of specification-centered or component-based software development frameworks. Nevertheless, model checking has been quite inefficient when dealing with systems with data variables over a large (or infinite) domain, which is a serious limiting factor for ...
متن کاملExplaining Data Type Reduction in the Shape Analysis Framework
Automatic formal verification of systems composed of a large or even unbounded number of components is difficult as the state space of these systems is prohibitively large. Abstraction techniques automatically construct finite approximations of infinite-state systems from which safe information about the original system can be inferred. We study two abstraction techniques shape analysis, a tech...
متن کاملIncremental Veriication Techniques with Error Trace Traversal Reenement for Abstraction-based 8ctl Model Checking
A paradigm for abstraction/reenement in 8CTL model checking is presented. The abstraction considered is to model the system with a proper subset of the next state functions, yielding an upper bound on the system transition relation. Since negative conclusions can thus be false, the included subset must be enlarged to \resolve" the false negative. We solve the problem of nding the bounded number...
متن کاملSAT based Abstraction Refinement for Hardware Verification
Model checking is a widely used automatic formal verification technique. Despite the recent advances in model checking technology, its application is still limited by the state explosion problem. For model checking large real world systems, abstraction is essential. This thesis investigates abstraction techniques for the efficient verification of hardware designs with thousands of registers. A ...
متن کامل